// 获取所有收藏按钮元素（假设按钮有 'favorite-btn' 类名）
const favoriteButtons = document.querySelectorAll('.favorite-btn');

// 为每个收藏按钮添加点击事件监听器
favoriteButtons.forEach(function (button) {
    button.addEventListener('click', function () {
        const courseId = button.dataset.courseId; // 假设按钮上通过 data- 属性存储了课程 ID
        // 这里可以使用 fetch 或者 XMLHttpRequest 等方式发送 AJAX 请求到后端，告知后端收藏该课程
        // 以下是简单使用 fetch 的示例（实际需根据后端接口调整 URL 和请求数据格式等）
        fetch(`/courses/favorite/${courseId}/`, {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json',
                'X-CSRFToken': getCookie('csrftoken') // 获取 CSRF 令牌，确保安全提交（需配置好获取 cookie 的函数 getCookie）
            },
            body: JSON.stringify({}) // 根据后端需求可能需要传递更多数据，这里暂时为空
        })
      .then(response => response.json())
      .then(data => {
            if (data.success) {
                alert('课程已成功收藏');
                // 可以在这里根据后端返回的数据动态更新页面上的收藏按钮显示状态（比如改变按钮文本、样式等）
            } else {
                alert('收藏课程失败，请稍后再试');
            }
        })
      .catch(error => {
            console.error('收藏课程出现错误:', error);
            alert('收藏课程出现错误，请检查网络连接或稍后再试');
        });
    });
});

// 简单的获取 cookie 函数示例（用于获取 CSRF 令牌，需根据实际情况完善）
function getCookie(name) {
    const value = "; " + document.cookie;
    const parts = value.split("; " + name + "=");
    if (parts.length === 2) return parts.pop().split(";").shift();
    return null;
}